package common;

import java.io.Serializable;

/**
 * This class represents system user with default privileges.
 * This class must be inherited
 *
 */
public abstract class User implements Serializable{

	/**
	 * 
	 */
	private static final long serialVersionUID = -8082623342381100809L;
	private int id;
	private String password;
	private String firstname;
	private String lastname;
	private String login;
	
	/**
	 * Default constructor
	 */
	public User() {
		
	}
	
	/**
	 * User Id getter
	 * @return Id of the user
	 */
	public int getId() {
		return id;
	}
	
	/**
	 * User Id setter
	 * @param id Id of the user
	 */
	public void setId(int id) {
		this.id = id;
	}
	
	/**
	 * User password getter
	 * @return Password of the user
	 */
	public String getPassword() {
		return password;
	}
	
	/**
	 * User password setter
	 * @param password Password of the user
	 */
	public void setPassword(String password) {
		this.password = password;
	}
	
	/**
	 * First name getter
	 * @return The first name of the user
	 */
	public String getFirstname() {
		return firstname;
	}
	
	/**
	 * First name setter
	 * @param firstname The first name of the user
	 */
	public void setFirstname(String firstname) {
		this.firstname = firstname;
	}
	
	/**
	 * Last name getter
	 * @return The last name of the user
	 */
	public String getLastname() {
		return lastname;
	}
	
	/**
	 * Last name setter
	 * @param lastname The last name of the user
	 */
	public void setLastname(String lastname) {
		this.lastname = lastname;
	}
	
	/**
	 * Login name getter
	 * @return User's login name
	 */
	public String getLogin() {
		return login;
	}
	
	/**
	 * Login name setter
	 * @param login User's login name
	 */
	public void setLogin(String login) {
		this.login = login;
	}

}
